-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Live Projectors #1420
base: dev
Are you sure you want to change the base?
Live Projectors #1420
Conversation
… maketerm, wrap projector syntax in Parens variant, which is then retained through elaboration and its evaluation is tracked like Test
@Negabinary this is only tenuously out of draft but i'd appreciate a look-over when you get the chance, especially regarding the dynamics bits. Currently I'm doing some things a bit hackily and trying to decide how bad they actually are. There are two dynamics things in particular I'm wondering about:
P.S. I did some dead code removal in ClosureEnvironment as I was finding the interface was drifting a bit |
…us many cells probe option global
…ching how many cells are shown
@cyrus- all issues discussed yesterday have been addressed except as discussed below. Should be fixed:
Won't fix but will file issues:
|
…t necessarily neither or both
…obe offside. closure cursor now takes over for editor caret when a probe offside is focussed
…broken, projectors slide is broken
Closes #702, closes #829.
Projector fixes: closes #1359, closes #1396, closes #1436, closes #1489
Hazel selection fixes: closes #1448, , closes #1147, closes #890, closes #880, closes #1351, closes #879
General Hazel fixes: closes #1300, closes #1471, closes #933, closes #1421.
For an introduction, see the
Probes
slide here: https://hazel.org/build/projectors-live/.Core Feature: Probe Projectors
cells
to the right of the lineclosure cursor
powered by that closure's call stack. Other cells (across all probes) will get decorated based on their 'relative positions' within the call graph.Probe caveats:
Hazel Features:
term
by wrapping it in asWrap(term, Probe(options))
will make the evaluator collect information about the term's evaluations. This currently includes a value, a (filtered) environment, and a call stack. The options on Probe are intended to be added during statics, and can refine what is collected. Currently, they are used to filter the collected environment to the values occurring in the expression's co-context.Projector System Features:
1+2
in1+2*3
can be projected. If this makes people too angry I'll consider changing it.Clipboard cache
below)Updates to existing projectors:
Hazel Internal changes:
Future work:
These are features that are either cut for time or are waiting on in-pipeline subsystems.
Deferred fixes (will create issues for these):
Upcoming Probe enhancement PR will include:
Other future features (will create issues for these):